Telegram Group & Telegram Channel
Boshiga https://www.tg-me.com/de/Python dasturlash maktabi/com.pythonuz/590

###################

Mavjud bo'lmagan indeks yoki kalitlarni tekshirish uchun umumiy LookupError dan yoki LookupError dan meros bo'lib olingan IndexError, KeyError dan foydalanishingiz mumkin.

x = [1, 2, 3, 4, 5]
try:
print(x[5])
except LookupError as e:
print(f"{e}, {e.class}")

list index out of range, <class 'IndexError'>

# ——————————————-#

lugat = {1: 'one', 2: 'two'}
try:
print(lugat[3])
except LookupError as e:
print(f'{e}, {e.class}')

3, <class 'KeyError'>

###################

Dastur operatsion tizim xotirasidan katta hajmdagi xotirani iste'mol qilganda MemoryError xatoligi paydo bo'ladi.

import numpy
try:
numpy.ones((9999999999,))
except MemoryError as e:
print(e)

Unable to allocate 74.5 GiB for an array with shape (9999999999,) and data type float64
###################

Noto'g'ri yozilgan funksiya nomi yozilganda dastur NameError xatoligini qaytaradi.

try:
prin('Hello')
except NameError as e:
print(e, e.class)

name 'prin' is not defined <class 'NameError'>

# ——————————————-#
Mavjud bo'lmagan o'zgaruvchi yozilganda dastur NameError xatoligini qaytaradi.

try:
var = 42
print(war)
except NameError as e:
print(e, e.class)

name 'war' is not defined <class 'NameError'>

# ——————————————-#
O'zgaruvchisi biror tur/qiymatga ega bo'lmagan funksiyaga murojaat qilinganda dastur UnboundLocalError xatoligini qaytaradi.

def func():
x += 1
print(x)


func()

UnboundLocalError: local variable 'x' referenced before assignment

###################

Dastur ishga tushirilganda dasturlash tili qoidalariga amal qilinmaganda (sintaksis xatolar bo'lsa) SyntaxError xatoligini qaytaradi.Keraksiz joyda nuqta, vergul, bo'sh joy, operator yoki funksiyalar nomini xato yozish, ochilmay yoki yopilmay qolgan qavs, ikkitirnoq yoki birtirnoqlar, o'zgaruvchilarga noto'g'ri nom berish SyntaxError ga misol bo'la oladi.

len() = 5

SyntaxError: cannot assign to function call

# ——————————————-#

fro i in range(10):
print(i)

SyntaxError: invalid syntax

# ——————————————-#

Kod bloklarida noto'g'ri yozilgan bo'sh joylar IndentationError xatoligini qaytaradi.

num = 5
if num == 5:
print('ok')

IndentationError: expected an indented block

# ——————————————-#

Yorliqlar va bo'shliqlardan noto'g'ri foydalanganda dastur TabError xatoligini qaytaradi

rating_range = 1
for row in range(6):
if 200 <= 199:
rating_range += 1
print(rating_range)

TabError: inconsistent use of tabs and spaces in indentation

###################

Noto'g'ri ma'lumot turlari ustida amallar bajarilganda dastur TypeError xatoligini qaytaradi.
Quyidagi holatlarda dastur TypeError xatoligini qaytaradi.

——————————————-#

Matn va sonni birlashtirishga uringanda

num  = 42
matn = '-maktab'
print(num + matn)

TypeError: unsupported operand type(s) for +: 'int' and 'str'

——————————————-#

O'zgaruvchini funksiya ko'rinishida chaqirganda

var = 'pythonuz'
print(var())

TypeError: 'str' object is not callable

——————————————-#

Ro'yxat indeksida noto'g'ri ma'lumot turi ko'rsatilganda

royxat = ['pythonuz', 'phpuz']
print(royxat['1'])

TypeError: list indices must be integers or slices, not str

###############

Biror amal yoki funktsiya mos bo'lmagan qiymatga ega bo'lgan argumentni qabul qilganda dastur ValueError xatoligini qaytaradi.

import math
x = -9
try:
print(f'{x} ning kvadrat ildizi {math.sqrt(x)}')
except ValueError as e:
print({e}, {e.class})

{ValueError('math domain error')} {<class 'ValueError'>}

——————————————-#

try:
int('two')
except ValueError as e:
print({e}, {e.class})


{ValueError("invalid literal for int() with base 10: 'two'")} {<class 'ValueError'>}

###############

Python dasturlash tiliga oid savollarni ushbu guruhga yozing @apiuz



tg-me.com/pythonuz/591
Create:
Last Update:

Boshiga https://www.tg-me.com/de/Python dasturlash maktabi/com.pythonuz/590

###################

Mavjud bo'lmagan indeks yoki kalitlarni tekshirish uchun umumiy LookupError dan yoki LookupError dan meros bo'lib olingan IndexError, KeyError dan foydalanishingiz mumkin.

x = [1, 2, 3, 4, 5]
try:
print(x[5])
except LookupError as e:
print(f"{e}, {e.class}")

list index out of range, <class 'IndexError'>

# ——————————————-#

lugat = {1: 'one', 2: 'two'}
try:
print(lugat[3])
except LookupError as e:
print(f'{e}, {e.class}')

3, <class 'KeyError'>

###################

Dastur operatsion tizim xotirasidan katta hajmdagi xotirani iste'mol qilganda MemoryError xatoligi paydo bo'ladi.

import numpy
try:
numpy.ones((9999999999,))
except MemoryError as e:
print(e)

Unable to allocate 74.5 GiB for an array with shape (9999999999,) and data type float64
###################

Noto'g'ri yozilgan funksiya nomi yozilganda dastur NameError xatoligini qaytaradi.

try:
prin('Hello')
except NameError as e:
print(e, e.class)

name 'prin' is not defined <class 'NameError'>

# ——————————————-#
Mavjud bo'lmagan o'zgaruvchi yozilganda dastur NameError xatoligini qaytaradi.

try:
var = 42
print(war)
except NameError as e:
print(e, e.class)

name 'war' is not defined <class 'NameError'>

# ——————————————-#
O'zgaruvchisi biror tur/qiymatga ega bo'lmagan funksiyaga murojaat qilinganda dastur UnboundLocalError xatoligini qaytaradi.

def func():
x += 1
print(x)


func()

UnboundLocalError: local variable 'x' referenced before assignment

###################

Dastur ishga tushirilganda dasturlash tili qoidalariga amal qilinmaganda (sintaksis xatolar bo'lsa) SyntaxError xatoligini qaytaradi.Keraksiz joyda nuqta, vergul, bo'sh joy, operator yoki funksiyalar nomini xato yozish, ochilmay yoki yopilmay qolgan qavs, ikkitirnoq yoki birtirnoqlar, o'zgaruvchilarga noto'g'ri nom berish SyntaxError ga misol bo'la oladi.

len() = 5

SyntaxError: cannot assign to function call

# ——————————————-#

fro i in range(10):
print(i)

SyntaxError: invalid syntax

# ——————————————-#

Kod bloklarida noto'g'ri yozilgan bo'sh joylar IndentationError xatoligini qaytaradi.

num = 5
if num == 5:
print('ok')

IndentationError: expected an indented block

# ——————————————-#

Yorliqlar va bo'shliqlardan noto'g'ri foydalanganda dastur TabError xatoligini qaytaradi

rating_range = 1
for row in range(6):
if 200 <= 199:
rating_range += 1
print(rating_range)

TabError: inconsistent use of tabs and spaces in indentation

###################

Noto'g'ri ma'lumot turlari ustida amallar bajarilganda dastur TypeError xatoligini qaytaradi.
Quyidagi holatlarda dastur TypeError xatoligini qaytaradi.

——————————————-#

Matn va sonni birlashtirishga uringanda

num  = 42
matn = '-maktab'
print(num + matn)

TypeError: unsupported operand type(s) for +: 'int' and 'str'

——————————————-#

O'zgaruvchini funksiya ko'rinishida chaqirganda

var = 'pythonuz'
print(var())

TypeError: 'str' object is not callable

——————————————-#

Ro'yxat indeksida noto'g'ri ma'lumot turi ko'rsatilganda

royxat = ['pythonuz', 'phpuz']
print(royxat['1'])

TypeError: list indices must be integers or slices, not str

###############

Biror amal yoki funktsiya mos bo'lmagan qiymatga ega bo'lgan argumentni qabul qilganda dastur ValueError xatoligini qaytaradi.

import math
x = -9
try:
print(f'{x} ning kvadrat ildizi {math.sqrt(x)}')
except ValueError as e:
print({e}, {e.class})

{ValueError('math domain error')} {<class 'ValueError'>}

——————————————-#

try:
int('two')
except ValueError as e:
print({e}, {e.class})


{ValueError("invalid literal for int() with base 10: 'two'")} {<class 'ValueError'>}

###############

Python dasturlash tiliga oid savollarni ushbu guruhga yozing @apiuz

BY Python dasturlash maktabi




Share with your friend now:
tg-me.com/pythonuz/591

View MORE
Open in Telegram


Python dasturlash maktabi Telegram | DID YOU KNOW?

Date: |

The seemingly negative pandemic effects and resource/product shortages are encouraging and allowing organizations to innovate and change.The news of cash-rich organizations getting ready for the post-Covid growth economy is a sign of more than capital spending plans. Cash provides a cushion for risk-taking and a tool for growth.

Python dasturlash maktabi from de


Telegram Python dasturlash maktabi
FROM USA